#ifndef __DIRECTORY_OPERATION__
#define __DIRECTORY_OPERATION__

#include <my_header.h>
#define MAX_STACK_SIZE 1024

typedef struct pathStack_s{
    char *stack[MAX_STACK_SIZE];
    int top;
    char *restoreStack[MAX_STACK_SIZE];
    int top_r;
}pathStack_t;

int stackInit(pathStack_t* cur);
int stackClean(pathStack_t* cur);
int stackRestore(pathStack_t* cur);
int stackPath(char* path,pathStack_t* cur);
int pri_cd(bool path_type,char* path,pathStack_t* cur);
int pwd_client(char* path,pathStack_t* cur); // 返回给客户端
int pwd_server(char* path,pathStack_t* cur); // 返回的收发文件方
int pri_mkdir(bool path_type,char* path,pathStack_t* cur);
int pri_rmdir(bool path_type,char* path,pathStack_t* cur);
int pri_ls(bool path_type,char* path,pathStack_t* cur,char* result);

#endif
